<?php

namespace Mogod\Core\Model\Scheme\Worker;

/**
 * Абстрактный обработчик схемы моделей
 *
 * @author morph, goorus
 */
abstract class ModelSchemeWorkerAbstract
{
	/**
	 * Возвращает значения свойства поля модели по моделе и имени поля
	 *
	 * @param Mogod\Core\Model\Model $model Название модели
	 * @param string $fieldName Поле модели
	 * @param string $propertyName Название необходимого свойства
	 * @return string
	 */
	abstract public function getFieldProperty($model, $fieldName,
		$propertyName);

	/**
	 * Возвращает значения свойства моделе по имени поли и свойства
	 *
	 * @param Mogod\Core\Model\Model $model
	 * @param string $propertyName
	 * @return string
	 */
	abstract public function getModelProperty($model, $propertyName);
}